package CONTABILIDAD_MODELO;
import Conexion.Conexion;
import java.sql.SQLException;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;

public class CON_TIPO_DE_CAMBIO{
	private double ID;
	private double TIPO_CAMBIO;
	private double ID_COMPROBANTE;
	private double ID_MONEDA;
	private Conexion con = null;

	public CON_TIPO_DE_CAMBIO(){}

	public CON_TIPO_DE_CAMBIO(double ID_MONEDA,double ID_COMPROBANTE,double TIPO_CAMBIO,double ID){
		this.ID_MONEDA =ID_MONEDA;
		this.ID_COMPROBANTE =ID_COMPROBANTE;
		this.TIPO_CAMBIO =TIPO_CAMBIO;
		this.ID =ID;
	}

	public boolean Insertar()throws Exception{
			String consulta = "insert into BROKER.CON_TIPO_DE_CAMBIO(ID_MONEDA,ID_COMPROBANTE,TIPO_CAMBIO,ID) VALUES ("+ID_MONEDA+","+ID_COMPROBANTE+","+TIPO_CAMBIO+","+ID+")";
			con.EjecutarSentencia(consulta);
			return true;
	}

	public boolean EliminarXid(){
		try{
			String consulta = "delete from BROKER.CON_TIPO_DE_CAMBIO where ID = "+getID();
			con.EjecutarSentencia(consulta);
			return true;
			}
		catch(Exception e){
			e.printStackTrace();
			return false;
		}
	}
	public boolean EliminarXCOMPROBANTE(double id_comprobante) throws SQLException{
            String consulta = "delete from BROKER.CON_TIPO_DE_CAMBIO where ID_COMPROBANTE = "+id_comprobante;
            con.EjecutarSentencia(consulta);
            return true;
	}

	public List<CON_TIPO_DE_CAMBIO> BuscarXid(double id){
		try{String consulta = "select * from BROKER.CON_TIPO_DE_CAMBIO where ID_COMPROBANTE = "+id +" order by CON_TIPO_DE_CAMBIO.ID_MONEDA ASC";
			ResultSet rs = con.EjecutarConsulta(consulta);
			return Cargar(rs);}
		catch(Exception e){
			e.printStackTrace();}
			return null;
	}
	

	public List<CON_TIPO_DE_CAMBIO> Todos(){
		try{String consulta = "select * from BROKER.CON_TIPO_DE_CAMBIO";
			ResultSet rs = con.EjecutarConsulta(consulta);
			return Cargar(rs);}
		catch(Exception e){
			e.printStackTrace();}
			return null;
	}

	public List<CON_TIPO_DE_CAMBIO> Cargar(ResultSet rs){
		try{
			List<CON_TIPO_DE_CAMBIO> lista = new ArrayList<CON_TIPO_DE_CAMBIO>();
			while(rs.next()){
				CON_TIPO_DE_CAMBIO objeto = new CON_TIPO_DE_CAMBIO();

				objeto.setID(rs.getDouble("ID"));
				objeto.setTIPO_CAMBIO(rs.getDouble("TIPO_CAMBIO"));
				objeto.setID_COMPROBANTE(rs.getDouble("ID_COMPROBANTE"));
				objeto.setID_MONEDA(rs.getDouble("ID_MONEDA"));
				 objeto.setCon(con);
				lista.add(objeto);
			}
			return lista;
		}
		catch(SQLException ex){
			ex.printStackTrace();
		return null;}
	}

	public double getID(){
		return ID;
	}
	public void setID(double ID){
		this.ID=ID;
	}

	public double getTIPO_CAMBIO(){
		return TIPO_CAMBIO;
	}
	public void setTIPO_CAMBIO(double TIPO_CAMBIO){
		this.TIPO_CAMBIO=TIPO_CAMBIO;
	}

	public double getID_COMPROBANTE(){
		return ID_COMPROBANTE;
	}
	public void setID_COMPROBANTE(double ID_COMPROBANTE){
		this.ID_COMPROBANTE=ID_COMPROBANTE;
	}

	public double getID_MONEDA(){
		return ID_MONEDA;
	}
	public void setID_MONEDA(double ID_MONEDA){
		this.ID_MONEDA=ID_MONEDA;
	}

	public Conexion getCon() {
		return con;
	}
	public void setCon(Conexion con) {
		this.con = con;
	}

}
